package com.ly.heart.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ly.common.core.domain.BaseVo;

import java.util.Date;
import java.util.List;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

/**
 * <p>
 * 项目里程碑，计划实施节点
 * </p>
 *
 * @author WuZH
 * @since 2024-05-14
 */
@Getter
@Setter
@TableName ( "erp_project_milestone_info" )
@ApiModel ( value = "项目里程碑，计划实施节点", description = "项目里程碑，计划实施节点" )
public class ProjectMilestoneEntity extends BaseVo {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty ( "id" )
    @TableId ( value = "id", type = IdType.INPUT )
    private String id;

    @ApiModelProperty ( "项目Id" )
    @TableField ( "project_id" )
    private String projectId;

    @ApiModelProperty ( "节点名称" )
    @TableField ( "node_name" )
    private String nodeName;

    @ApiModelProperty ( "完成进度百分比" )
    @TableField ( "schedule_rate" )
    private String scheduleRate;

    @ApiModelProperty ( "权重" )
    @TableField ( "weight" )
    private Integer weight;

    @ApiModelProperty ( "计划开始日期" )
    @TableField ( "plan_start_time" )
    private Date planStartTime;

    @ApiModelProperty ( "计划结束日期" )
    @TableField ( "plan_end_time" )
    private Date planEndTime;

    @ApiModelProperty ( "实际开始日期" )
    @TableField ( "actual_start_time" )
    private Date actualStartTime;

    @ApiModelProperty ( "实际结束日期" )
    @TableField ( "actual_end_time" )
    private Date actualEndTime;

    @ApiModelProperty ( "负责人Id" )
    @TableField ( "responsible_user_id" )
    private String responsibleUserId;

    @ApiModelProperty ( "预计工时" )
    @TableField ( "work_hour" )
    private String workHour;

    @ApiModelProperty ( "实际工时" )
    @TableField ( "actual_hour" )
    private String actualHour;

    @ApiModelProperty ( "工时单价" )
    @TableField ( "hour_price" )
    private String hourPrice;

    @ApiModelProperty ( "工时总价" )
    @TableField ( "total_price" )
    private String totalPrice;

    @ApiModelProperty ( "添加人员Id" )
    @TableField ( "user_id" )
    private String userId;

    @ApiModelProperty ( "备注" )
    @TableField ( "remarks" )
    private String remarks;

    @ApiModelProperty ( "创建时间" )
    @TableField ( "create_time" )
    private Date createTime;

    @ApiModelProperty ( "更新时间" )
    @TableField ( "change_time" )
    private Date changeTime;

    @TableField ( "is_used" )
    private Integer isUsed;

    @TableField(exist = false)
    private String userName;
    private List<String> fileIds;

}
